#ifndef FILEMENU_H
#define FILEMENU_H

#include <QMenu>
#include <QFileDialog>
#include <QFile>
#include <QMessageBox>
#include <QVBoxLayout>
#include <QLabel>
class FileMenu : public QMenu {
    Q_OBJECT

public:
    explicit FileMenu(QWidget *parent = nullptr); // 构造函数
    ~FileMenu(); // 析构函数

private:
    void menuInit();    // 菜单初始化
    void menuDestroy(); // 菜单销毁

signals:
    void signalExit();                                           // 退出信号

private slots:
    void slotOpenProject();     // 打开项目
    void slotNewProject();      // 新建项目
    void slotSaveProject();     // 保存项目
    void slotSaveAsProject();   // 另存项目

private:
    QAction *m_openProject = nullptr;    // 打开项目 QAction
    QAction *m_newProject = nullptr;     // 新建项目 QAction
    QAction *m_saveProject = nullptr;    // 保存项目 QAction
    QAction *m_saveAsProject = nullptr;  // 另存项目 QAction
    QAction *m_exit = nullptr;           // 退出 QAction

    // 布局管理器，用于显示动态内容
    QVBoxLayout *layout;
};

#endif // FILEMENU_H
